Method, system and storage medium for providing training to multiple users

ABSTRACT

An exemplary embodiment of the invention is a method of providing training to a plurality of users in a system including a training system and a plurality of user systems coupled to the training system via a network. The method includes receiving a request to create a training program and providing an editable training program template to the user system in response to the request to edit or create a training program. The editable training program template permits entry of content for the training program. Other embodiments of the invention include a system and storage medium for implementing the method.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.09/538,391 filed Mar. 29, 2000 now U.S. Pat. No. 6,438,353, the entirecontents of which are incorporated herein by reference.

BACKGROUND OF THE INVENTION

The invention relates to a method and system for providing training tomultiple users. Computerized training systems exist in the art whichpresent a training program to a user in an effort to train the user in aparticular topic. Such systems may present the user with a series ofscenarios, questions, etc. and elicit answers from the user. The user'sresponses are compared to known correct responses and the user isprovided with a summary of the number of correct and incorrect answers.Such systems provide rapid feedback to the user and can be useful inidentifying areas where the user requires further training.

A drawback to such systems is that often the training program is noteasily created or modified by the trainer. Often, the training programwhich is presented to the user is derived by a training programprovider. The training program provider works along with the trainer(e.g., a company desiring to train its workforce in diversity issues) todevelop the training program including questions, multiple choiceanswers, audio, video, etc. If the trainer determines that changes areneeded to an existing training program or a new training program needsto be developed, the trainer must contact the training program providerto edit the training program. Such a process results in expense for thetrainer and delays in generating training programs.

BRIEF DESCRIPTION OF THE INVENTION

An exemplary embodiment of the invention is a method of providingtraining to a plurality of users in a system including a training systemand a plurality of user systems coupled to the training system via anetwork. The method includes receiving a request to create a trainingprogram and providing an editable training program template to the usersystem in response to the request to edit or create a training program.The editable training program template permits entry of content for thetraining program. Other embodiments of the invention include a systemand storage medium for implementing the method.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of a system for providing training in oneembodiment of the invention.

FIG. 2 is an exemplary user interface for initiating training.

FIG. 3 is a flowchart of a training process in one embodiment of theinvention.

FIG. 4 is an exemplary user interface for editing or creating a trainingprogram.

FIG. 5 is an exemplary user interface for editing a training program.

FIG. 6 is an exemplary user interface for editing a training program.

FIG. 7 is an exemplary user interface for editing a training program.

FIG. 8 is an exemplary user interface for editing a training program.

FIG. 9 is an exemplary user interface for specifying functional aspectsof the system of FIG. 1.

FIG. 10 depicts an exemplary training survey report generated by thesystem of FIG. 1.

FIG. 11 depicts an exemplary training statistical report generated bythe system of FIG. 1.

FIG. 12 depict s an exemplary training summary report generated by thesystem of FIG. 1.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

FIG. 1 is a block diagram of a system for providing training in oneembodiment of the invention. The system includes one or more usersystems 18 coupled to a training system 14 via a network 12. Each usersystem 18 may be implemented using a general-purpose computer executinga computer program for carrying out the processes described herein. Thenetwork 12 may be any type of known network including a local areanetwork (LAN), wide area network (WAN), global network (e.g., Internet),intranet, etc. The user systems 18 may be coupled to the training system14 through multiple networks (e.g., intranet and Internet) so that notall user systems 18 are coupled to the training system 14 via the samenetwork. One or both of the user systems 18 and the training system 14may be connected to the network 12 in a wireless fashion and network 12may be a wireless network. In a preferred embodiment, the network 12 isthe Internet and each user system 18 executes a user interfaceapplication (e.g., web browser) to contact the training system 14through the Internet 12. Alternatively, a user system 18 may beimplemented using a device programmed primarily for accessing network 12such as WebTV.

The training system 14 includes a network server 20 (often referred toas a web server) to communicate with the user systems 18. The networkserver 20 may be implemented using commercially available servers as areknown in the art. The network server 20 handles sending and receivinginformation to and from user systems 18 and can perform associatedtasks. The training system 14 also includes a firewall 41 to: (1)prevent unauthorized access to the training system 14; and (2) withrespect to entities that are authorized access to the training system14, enforce any limitations on the authorized access. For instance, anadministrator may have access to the entire system and have authority tomodify portions of the system. By contrast, a trainee contacting thetraining system 14 from a user system 18 would have the ability toexecute training programs but not alter the applications or data storedin database 70. The firewall 41 may be implemented using conventionalhardware and/or software as is known in the art.

The training system 14 also includes an applications server 39.Applications server 39 executes one or more computer programs to presentthe training program to the user systems 18 and perform the processesdescribed herein. It is understood that more than one applicationsserver may be used. Alternatively, the web server, firewall and theapplications server can be implemented by a single server executingprograms to perform the requisite functions.

The applications server 39 is coupled to a database 70. Database 70contains a variety of information related to training of users. Suchinformation may include the type of users requiring training, the typeof training required by each user and whether each user has completedtheir requisite training. In an exemplary embodiment, the database 70includes data similar to that in a human resources database whichidentifies users by name, employee number, position, etc. In addition,as discussed in further detail herein, database 70 may contain trainingdata accessed by the applications server 39 during presentation of thetraining program to the user system 18.

Operation of the system will now be described. A number of differentusers may access the training system including trainees andadministrators. In an exemplary embodiment, a trainee is a user whocontacts training system 14 in order to obtain training. In an exemplaryembodiment, an administrator is a user who may contact the trainingsystem 14 to obtain training or may contact the training system 14 tocreate or modify training programs, specify functions of the system orgenerate reports regarding training. In an exemplary embodiment, theuser system 18 includes a user interface application (e.g., a webbrowser) which allows the user system 18 to contact the training system14 via network 12 (e.g., the Internet). The user system 18 may alsocontact the training system without a direct link to network 12 by usinga communications device (e.g., a modem) and the services of an Internetservice provider such as the America Online service.

Once the user system 18 contacts the training system 14, the trainingsystem 14 requires the user to provide a user identity though a log inprocedure. This may require entering a user ID and password as known inthe art. Once the user has logged in, the training system 14 presentsthe user system 18 with a main screen such as that shown in FIG. 2. Asshown in FIG. 2, the user can begin training by selecting button 80,view training history by selecting button 82, view unfulfilled trainingby selecting button 84 and edit training material by selecting button86. The user systems 18 include an input peripheral (e.g., mouse,trackball, keyboard, etc.) that allows the user to select buttons asknown in the art. The edit training material button 86 is only presentedif the user is an administrator. Administrator operations are discussedherein with reference to FIGS. 4-12.

If the user selects the begin training button 80, the user may first bequeried what is the user's preferred language. The training programs canbe stored in database 70 in multiple languages. The training programsmay also include a language designator which identifies the language ofthe training program. The user's preferred language is also stored indatabase 70 in a record corresponding to the user. Subsequent trainingprograms will automatically be presented in the user's preferredlanguage by accessing the training program having the appropriatelanguage designator.

The user is then instructed to select a training program which may beperformed using a drop down list of available training programs. Sincetraining is typically encouraged, the user is presented with allavailable training programs. Alternatively, a limited list of availabletraining programs may be presented to the user depending upon useridentifiers stored in database 70. The training programs may beorganized by policy (e.g., employment issues) with a number ofsub-topics under each policy. Upon selecting a training program, theuser proceeds through a training program such as that outlined in FIG.3. As shown in FIG. 3, the user is presented with a policy overview atstep 100. For example, if the training program pertains to equalemployment opportunity, the policy overview 100 provides a generaldescription of the trainer's equal employment opportunity policy. Theuser can then select a sub-topic 102 to commence training in thatsub-topic. Exemplary sub-topics in the equal employment opportunitytraining program include non-discrimination, Americans with DisabilitiesAct, affirmative action, etc. The user selects a sub-topic 102 and ispresented with an overview 104. The overview 104 may outline the issuesrelated to the sub-topic and the goals of the training. The user is thenpresented with one or more scenarios 106 and a series of questions 108based on each scenario 106. Upon answering a question, the user ispresented with a correct answer explanation 110 or an incorrect answerexplanation 112 depending on whether the user correctly answered thequestion. The question and answer process continues until the user hascompleted the training for all scenarios 106 in the sub-topic 102. Theuser may then be prompted to complete a survey 114 evaluating thetraining program with respect to the sub-topic. Another survey may bepresented to the user when training for all sub-topics under a policy iscompleted. The survey allows the user to rate the training program basedon a number of factors such as content, relevance, etc. It is understoodthat the training program may be organized in a variety of fashions andthe policy/sub-topic organization is exemplary.

As training of a sub-topic is completed, data concerning the trainingsession is stored in database 70. Such data includes the identificationof the sub-topic, an identification of the trainee, the time spent inthe training program, and the number of correct answers. This data canbe sorted by the training system 14 to generate reports such as thosedescribed herein with reference to FIGS. 10-12.

Referring to FIG. 2, the user may select training history button 82 toview a listing of the training that the user has completed. As notedabove, when a user completes training for a sub-topic, an identifier ofthe sub-topic completed and the completion date are stored in thatuser's record in database 70. Selecting the training history button 82retrieves this information from database 70 for presentation to theuser.

If the user selects the unfulfilled training button 84, the user ispresented with a listing of training programs that are to be completedby the user. The listing may include a training program description anda due date for completion. Such information may be generated by thetraining system 14 and stored in the database 70. As described herein,when a training program is generated, an administrator designates theindividuals who must complete the training based on one or more useridentifiers. Users meeting the user identifiers are notified that theymust complete the training program. For example, all management levelemployees may require training on proper hiring practices. The trainingsystem 14 may execute a training management software application thattracks what training is required for each user and what training hasbeen completed by each user. The training management application sendsautomated e-mails to users when training is required and automaticallyupdates the user's training history and unfulfilled training as the usercompletes training. The training management application may beimplemented using software such as that available from Saba Software,Inc. When a training program is created or modified, all users requiredto take such training are automatically notified.

Referring to FIG. 2, if an administrator contacts the training system14, the administrator is presented with the edit training materialbutton 86. As described above, an administrator is an individual who hasauthority to create training programs. This authority is granted by oneor more managers of the training system. An administrator can create newtraining programs or can edit training programs they have created. Inaddition, an administrator may assign authority to edit programmaterials to others as described herein.

If the administrator selects the edit training material button 86, theadministrator is presented with a create/edit screen such as that shownin FIG. 4. As show in FIG. 4, the administrator is presented with a dropdown list 120 of training materials that the administrator has authorityto edit. These may be training programs created by the administrator ortraining programs for which the administrator has been assigned theauthority to edit. The administrator is also presented with a newtraining program button 122. Selection of the new training programbutton 122 allows the administrator to define a new training program.

To edit an existing training program, the administrator selects atraining program from the list 120. To create a new training program,the administrator selects the new training program button 122. Theprocesses of editing an existing training program and creating a newtraining program are similar. The process of editing a training programis shown in FIGS. 5-8.

Once the administrator has selected a program for editing from the list120 in FIG. 4, the administrator is presented with an editable trainingprogram template such as that shown in FIG. 5. As shown in FIG. 5, theeditable training program template includes dialog windows through whichthe administrator can edit the content of the training program. As shownin FIG. 5, a policy dialog window 130 allows the administrator to enterthe policy name of the training program. FIG. 5 also depicts anintroduction dialog window 132 in which the administrator can enter anintroduction to the training program. The dialog windows may alsocontain control codes which adjust appearance and/or position of thetext such as font, size, color, justification, etc. The entries intodialog windows can be saved (e.g., in database 70) in text format sothat no programming knowledge is needed to create or edit the trainingprogram. The content of the training program is not limited to text. Theadministrator can also specify audio, video, images, graphics, etc. forinclusion in the training program. Such content is inserted in thetraining program by specifying a file which may be stored in database70.

Also shown in FIG. 5 is a contributor window 134. The contributor windowallows the administrator to assign authority to one or more individualsto edit the training program. When an individual listed in thecontributor window 134 accesses the system, the contributor will begiven the authority to edit the training program. Contributors may begranted authority to edit the entire training program or only sub-topicswithin the training program. The administrator may also specify an ownerfor the training program. An owner is typically a business person who isassociated with the training program (e.g., a human resources executivemay be considered the owner of a training program on proper hiringpractices). The owners may be linked to geographic areas and areidentified to aid users in resolving issues regarding the trainingprogram. Questions regarding training can be directed to the appropriateowners.

The administrator may also edit questions presented to users through aquestion window 136 and enter answers through answer windows 140 asshown in FIG. 6. The correct answer is specified by the administrator byselecting an answer indicator 142. As described above, the administratormay easily edit or create questions and answers through the windowsprovided in the editable training program template. The editabletraining program template also allows an administrator to provide anexplanation for correct answers and incorrect answers through dialogwindows such as those shown in FIGS. 5 and 6. The entries into questionand answer dialog windows can be saved (e.g., in database 70) in textformat so that no programming knowledge is needed to create or edit thetraining program.

As shown in FIG. 3, the user may also complete a survey. The contents ofthe survey may be edited or created by an administrator through theeditable training program template. FIG. 7 illustrates an exemplaryportion of the editable training program template directed to a survey.The administrator can edit questions through a survey question window144 and specify responses in a survey response window 146. Again, theeditable training program template allows editing of the survey contentthrough simple text editing. The entries into survey dialog windows canbe saved (e.g., in database 70) in text format so that no programmingknowledge is needed to create or edit the training program. As notedabove, the process for creating a training program is similar to that ofediting a training program except that the administrator will beentering content in the editable training program template for the firsttime.

In addition to providing for simple creation and editing of individualtraining programs, the training system provides for editing ofintroductory material to the training system. Certain individuals mayhave system wide access and are referred to as system administrators.The system administrators can perform a number of tasks described withreference to FIGS. 8-12.

One task a system administrator can perform is to edit the introductorymaterial provided to users logging into the training system 14. As shownin FIG. 8, the system administrator can alter introductory text to thetraining system such as a welcome message, and assistance message andintroductory message. All these items are edited through dialog windows150, 152 and 154 respectively which are part of the editable trainingprogram template. The system administrator can edit the text in dialogwindows 150, 152 and 154 through text editing and thus no programmingknowledge is required. The text entered in dialog windows 150, 152 and154 is stored in database 70 and accessed by the training system 14during execution of a training program. As described above, the contentmay extend beyond text and include images, sounds, video, etc.

In addition to editing content of the training programs, the systemadministrator can control functional aspects of the training system.Shown in FIG. 9 is system administrator screen through which a systemadministrator can specify function parameters of the training system 14.A pretest designator 156 may be selected to require new trainees to takea pretest prior to acquiring training in a policy. The pretest helpssystem administrators determine the effectiveness of the trainingprogram. After completing a training program, a user should have ahigher of correct answers than in the pretest.

Windows 158, 160, 162 and 164 allow the system administrator to definethe applications server 39, the path to the server, the path to filesaccessed by the server and the path to files stored in the server. Asdescribed above, the applications server may access training programsfrom database 70 of from memory in the applications server 39. Thesystem administrator may also add files to the database 70 for access bythe training system 14 during execution of a training program. Thesefiles may include items such as text files (text of American withDisabilities Act), graphic files (such gif files, tif files, etc.) andother types of files that are known in the art.

A survey designator 166 allows the system administrator to require thata survey be completed upon completing training in a sub-topic. If thesurvey designator is selected, the training system 14 will access thesurvey and present the survey to user system 18 upon completion of atraining program. Reports can then be generated based on the surveys asdescribed herein with reference to FIG. 10.

A policy overview time limit may be set in window 168. The policyoverview time limit prescribes a time limit (e.g., a number of days)after which a user must review the policy overview provided in thetraining program. If the difference between the user's last access tothe training program and the current access to the training programexceeds the policy overview time limit, then the user is required toreview policy overview for that training program.

A counter field 170 and counter since field 172 indicate the number oftimes the training system 14 has been accessed for training (rather thanfor creating training materials) and the date when the count wasinitiated. The system administrator can reset the counter and date ifdesired.

A number of reports can be generated by the system administrator, one ofwhich is a survey report as shown in FIG. 10. The survey report providesthe results of the surveys presented upon completion of each sub-topicor upon completion of a policy (i.e., all sub-topics under a policy). Asshown in FIG. 10, the survey report includes the number of responses foreach answer in the survey and the percentage for each response. Thesystem administrator can use the survey report to evaluate theeffectiveness of training programs for sub-topics and the overalltraining program for a policy.

Another report produced by the training system 14 is a trainingstatistical report such as that shown in FIG. 11. The trainingstatistical report identifies, for each sub-topic, the number ofindividuals trained, the average time spent training, the number correctand percent correct in a pretest and the number correct and percentcorrect after completing the training program. The training system 14acquires this data as a trainee is performing training and stores thestatistical data in database 70 or in another memory accessible by thetraining system 14. The comparison of pretest and post test correctanswers is useful in that the training program should increase thetrainee's awareness of issues under the policy and lead to improvementin the number of correct answers after acquiring training. Lack of anincrease in correct answer percentage from pretest to post test mayindicate that the training program requires revision.

A training summary report may also be generated by the training systemupon request by a system administrator. An exemplary training summaryreport is shown in FIG. 12. The training summary report identifies thepolicy, the administrator for the training program directed to thepolicy and contributors to the training program. The training summaryreport also includes a list of sub-topics and a status for eachsub-topic. The status indicates whether the training program for thatsub-topic is available for access by users. The number of scenariospresented in the sub-topic and number of total questions is alsoprovided for each sub-topic. This report provides the systemadministrator with a high level understanding of the extent andavailability of training programs in the training system 14.

A number of other reports may be generated by the training system 14 fora system administrator. For example, the system administrator mayrequest a report of all training completed by a specific user or alltraining completed by date. Alternatively, the names of users receivingtraining and dates of completion for each sub-topic may be provided in areport to the system administrator. The reports are generated bytraining system 14 accessing training data stored in database 70 andparsing and sorting the data in response to the system administrator'squery.

As described above, the present invention can be embodied in the form ofcomputer-implemented processes and apparatuses for practicing thoseprocesses. The present invention can also be embodied in the form ofcomputer program code containing instructions embodied in tangiblemedia, such as floppy diskettes, CD-ROMs, hard drives, or any othercomputer-readable storage medium, wherein, when the computer programcode is loaded into and executed by a computer, the computer becomes anapparatus for practicing the invention. The present invention can alsobe embodied in the form of computer program code, for example, whetherstored in a storage medium, loaded into and/or executed by a computer,or transmitted over some transmission medium, such as over electricalwiring or cabling, through fiber optics, or via electromagneticradiation, wherein, when the computer program code is loaded into andexecuted by a computer, the computer becomes an apparatus for practicingthe invention. When implemented on a general-purpose microprocessor, thecomputer program code segments configure the microprocessor to createspecific logic circuits.

While the invention has been described with reference to exemplaryembodiments, it will be understood by those skilled in the art thatvarious changes may be made and equivalents may be substituted forelements thereof without departing from the scope of the invention. Inaddition, many modifications may be made to adapt a particular situationor material to the teachings of the invention without departing from theessential scope thereof. Therefore, it is intended that the inventionnot be limited to the particular embodiments disclosed for carrying outthis invention, but that the invention will include all embodimentsfalling within the scope of the appended claims.

What is claimed is:
 1. A method of providing training to a plurality ofusers in a system including a training system and a plurality of usersystems coupled to the training system via a network, the methodcomprising: receiving a request to create a training program at thetraining system; receiving a user identity from the user system througha log in procedure; identifying the user system as one of a trainee andan administrator based on the user identity; if the user identitycorresponds to the administrator, providing an editable training programtemplate to the user system in response to the request to create atraining program, said editable training program template permittingentry of content for the training program; allowing the administrator toassociate a contributor with the training program; providing thecontributor access to edit the training program; and, denying thecontributor access to edit further training programs with which thecontributor is not associated; wherein said training program includessub-topics, said contributor being granted access to edit a subset ofthe sub-topics within the training program.
 2. The method of claim 1further comprising: allowing an administrator to require a trainee totake a pretest prior to providing said training program to said trainee.3. The method of claim 1 further comprising: allowing an administratorto require a trainee to complete a sub-topic survey upon completion of asub-topic of said training program, said sub-topic corresponding to aportion of said training program.
 4. The method of claim 1 furthercomprising: providing an administrator with a report related to saidtraining system.
 5. The method of claim 4 wherein: said report is atraining statistical report including a number of correct answers andpercent of correct answers for said training program.
 6. The method ofclaim 4 wherein: said report is a training summary report including apolicy, sub-topics, number of questions and an administrator for saidtraining program.
 7. The method of claim 1 further comprising: receivinga user's preferred language; storing said user's preferred language; andpresenting training programs to the user in said preferred language. 8.The method of claim 1 further comprising associating an owner with thetraining program.
 9. A system for providing training to a plurality ofusers, the system comprising: a training system connected to a usersystem by a network, said training system providing an editable trainingprogram template to the user system in response to a request to create atraining program, said editable training program template permittingentry of content for the training program; wherein: said training systemidentifies the user system as one of a trainee and an administrator;said training system provides the administrator access to said editabletraining program template; said training system associates a contributorwith the training program; said training system provides the contributoraccess to said editable training program template; said training systemdenies the contributor access to edit further training programs withwhich the contributor is not associated; said training program includessub-topics, said training system granting the contributor access to edita subset of the sub-topics within the training program.
 10. The systemof claim 9 wherein: said training system requires a trainee to take apretest prior to providing said training program to said trainee. 11.The system of claim 9 wherein: said training system requires a traineeto complete a sub-topic survey upon completion of a sub-topic of saidtraining program, said sub-topic corresponding to a portion of saidtraining program.
 12. The system of claim 9 wherein: said trainingsystem provides an administrator with a report related to said trainingsystem.
 13. The system of claim 12 wherein: said report is a trainingstatistical report including a number of correct answers and percent ofcorrect answers for said training program.
 14. The system of claim 12wherein: said report is a training summary report including a policy,sub-topics, number of questions and an administrator for said trainingprogram.
 15. The system of claim 9 wherein: said training systemreceives a user's preferred language; said training system stores saiduser's preferred language; and said training system presents trainingprograms to the user system in said preferred language.
 16. The systemof claim 9 said user system associates an owner with the trainingprogram.
 17. A storage medium encoded with machine-readable computerprogram code for providing training to a plurality of users in a systemincluding a user system and a training system connected by a network,the storage medium including instructions for causing the trainingsystem to implement a method comprising: receiving a request to create atraining program at the training system; receiving a user identity fromthe user system though a log in procedure; identifying the user systemas one of a trainee and an administrator based on the user identity; ifthe user identity corresponds to the administrator, providing aneditable training program template to the user system in response to therequest to create a training program, said editable training programtemplate permitting entry of content for the training program; allowingthe administrator to associate a contributor with the training program;providing the contributor access to edit the training program; denyingthe contributor access to edit further training programs with which thecontributor is not associated; wherein said training program includessub-topics, the contributor being granted access to edit a subset of thesub-topics within the training program.
 18. The storage medium of claim17 further comprising instructions for causing the training system toimplement: allowing an administrator to require a trainee to take apretest prior to providing said training program to said trainee. 19.The storage medium of claim 17 further comprising instructions forcausing the training system to implement: allowing an administrator torequire a trainee to complete a sub-topic survey upon completion of asub-topic of said training program, said sub-topic corresponding to aportion of said training program.
 20. The storage medium of claim 17further comprising instructions for causing the training system toimplement: providing an administrator with a report related to saidtraining system.
 21. The storage medium of claim 20 wherein: said reportis a training statistical report including a number of correct answersand percent of correct answers for said training program.
 22. Thestorage medium of claim 20 wherein: said report is a training summaryreport including a policy, sub-topics, number of questions and anadministrator for said training program.
 23. The storage medium of claim17 further comprising instructions for causing the training system toimplement: receiving a user's preferred language; storing said user'spreferred language; and presenting training programs to the user in saidpreferred language.
 24. The storage medium of claim 17 furthercomprising instructions for causing the training system to implement:allowing the administrator to associate an owner with the trainingprogram.
 25. A method of providing training to a plurality of users in asystem including a training system and a plurality of user systemscoupled to the training system via a network, the method comprising:receiving a request to create a training program at the training system;receiving a user identity from the user system through a log inprocedure; identifying the user system as one of a trainee and anadministrator based on the user identity; if the user identitycorresponds to the administrator, providing an editable training programtemplate to the user system in response to the request to create atraining program, said editable training program template permittingentry of content for the training program; allowing the administrator toassociate a contributor with the training program; providing thecontributor access to edit the training program; denying the contributoraccess to edit further training programs with which the contributor isnot associated; and, allowing an administrator to require a trainee tocomplete a sub-topic survey upon completion of a sub-topic of saidtraining program, said sub-topic corresponding to a portion of saidtraining program; wherein said training program includes a plurality ofsub-topics, said training system generating a survey report providingresults for a plurality of sub-topic surveys each corresponding to oneof said plurality of sub-topics.
 26. A system for providing training toa plurality of users, the system comprising: a training system connectedto a user system by a network, said training system providing aneditable training program template to the user system in response to arequest to create a training program, said editable training programtemplate permitting entry of content for the training program; wherein:said training system identifies the user system as one of a trainee andan administrator; said training system provides the administrator accessto said editable training program template; said training systemassociates a contributor with the training program; said training systemprovides the contributor access to said editable training programtemplate; said training system denies the contributor access to editfurther training programs with which the contributor is not associated,said training system allows an administrator to require a trainee tocomplete a sub-topic survey upon completion of a sub-topic of saidtraining program, said sub-topic corresponding to a portion of saidtraining program; wherein said training program includes a plurality ofsub-topics, the method further comprising generating a survey reportproviding results for a plurality of sub-topic surveys eachcorresponding to one of said plurality of sub-topics.
 27. A storagemedium encoded with machine-readable computer program code for providingtraining to a plurality of users in a system including a user system anda training system connected by a network, the storage medium includinginstructions for causing the training system to implement a methodcomprising: receiving a request to create a training program at thetraining system; receiving a user identity from the user system though alog in procedure; identifying the user system as one of a trainee and anadministrator based on the user identity; if the user identitycorresponds to the administrator, providing an editable training programtemplate to the user system in response to the request to create atraining program, said editable training program template permittingentry of content for the training program; allowing the administrator toassociate a contributor with the training program; providing thecontributor access to edit the training program; denying the contributoraccess to edit further training programs with which the contributor isnot associated; allowing an administrator to require a trainee tocomplete a sub-topic survey upon completion of a sub-topic of saidtraining program, said sub-topic corresponding to a portion of saidtraining program; wherein said training program includes a plurality ofsub-topics, the storage medium further comprising instructions forcausing the training system to generate a survey report providingresults for a plurality of sub-topic surveys each corresponding to oneof said plurality of sub-topics.
 28. A method of providing training to aplurality of users in a system including a training system and aplurality of user systems coupled to the training system via a network,the method comprising: receiving a request to create a training programat the training system; receiving a user identity from the user systemthrough a log in procedure; identifying the user system as one of atrainee and an administrator based on the user identity; if the useridentity corresponds to the administrator, providing an editabletraining program template to the user system in response to the requestto create a training program, said editable training program templatepermitting entry of content for the training program; allowing theadministrator to associate a contributor with the training program;providing the contributor access to edit the training program; denyingthe contributor access to edit further training programs with which thecontributor is not associated; providing an administrator with a reportrelated to said training system; wherein said report is a trainingstatistical report including a number of correct answers and percent ofcorrect answers for said training program; wherein said number ofcorrect answers and percent of correct answers are presented for apretest completed by the trainee.
 29. A system for providing training toa plurality of users, the system comprising: a training system connectedto a user system by a network, said training system providing aneditable training program template to the user system in response to arequest to create a training program, said editable training programtemplate permitting entry of content for the training program; wherein:said training system identifies the user system as one of a trainee andan administrator; said training system provides the administrator accessto said editable training program template; said training systemassociates a contributor with the training program; said training systemprovides the contributor access to said editable training programtemplate; said training system denies the contributor access to editfurther training programs with which the contributor is not associated;wherein said training system provides an administrator with a reportrelated to said training system; wherein said report is a trainingstatistical report including a number of correct answers and percent ofcorrect answers for said training program; wherein said number ofcorrect answers and percent of correct answers are presented for apretest completed by the trainee.
 30. A storage medium encoded withmachine-readable computer program code for providing training to aplurality of users in a system including a user system and a trainingsystem connected by a network, the storage medium including instructionsfor causing the training system to implement a method comprising:receiving a request for training at the training system; providing atraining program to the user system in response to the request fortraining; receiving a request to create a training program at thetraining system; receiving a user identity from the user system though alog in procedure; identifying the user system as one of a trainee and anadministrator based on the user identity; if the user identitycorresponds to the administrator, providing an editable training programtemplate to the user system in response to the request to create atraining program, said editable training program template permittingentry of content for the training program; allowing the administrator toassociate a contributor with the training program; providing thecontributor access to edit the training program; denying the contributoraccess to edit further training programs with which the contributor isnot associated; providing an administrator with a report related to saidtraining system; wherein said report is a training statistical reportincluding a number of correct answers and percent of correct answers forsaid training program; wherein said number of correct answers andpercent of correct answers are presented for a pretest completed by thetrainee.